By road
Java's toll roads are built nearly to Western standards, with dual grade-separated lanes in both directions and elevated interchanges. Tolls are quite affordable, usually Rp 1,000-5,000 every 10 km or so. However, signage is often lacking and driving habits are atrocious, so it's very wise to pay a little extra and get a car with driver instead of attempting to drive yourself.
By train
Java has the best railway network in Indonesia, with trains connecting the capital city of Jakarta with most other cities and towns in the island. The eksekutif class is the best class, and consequently the most expensive.
Ticket reservations can be made starting one month in advance. No on-line ticket reservation is available, but availability can be gleaned on PT Kereta Api's ticketing site (http://ticketing.kereta-a...).